/*
 * Copyright (c) 2003-2005
 * XDoclet Team
 * All rights reserved.
 */
package org.xdoclet.plugin.hibernate.qtags;

import org.xdoclet.plugin.hibernate.qtags.parameter.*;

/**
 * Using the &lt;join&gt; element, it is possible to map properties of one class to several tables.
 *
 * @author Anatol Pomozov
 * @qtags.location class
 */
public interface HibernateJoinTag extends com.thoughtworks.qdox.model.DocletTag, Schema, Catalog, Subselect, Fetch,
    Inverse {
    /**
     * If enabled, Hibernate will insert a row only if the properties defined by this join are non-null
     * and will always use an outer join to retrieve the properties.
     */
    Boolean getOptional();

    /**
     * The name of the joined table.
     *
     * @qtags.required
     */
    String getTable();
    
    /**
     * The name of the join
     *
     * @qtags.required
     */
    String getName_();
}
